package com.suning.sawp.po.precharge;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;

@Entity(name = "PRE_CHARGE_ACT")
public class PrechargeActivity implements Serializable{

    /**
     */
    private static final long serialVersionUID = -1530962674667424391L;
    // 促销活动ID
    private Long promotionId;
    // 活动编码
    private String ruleCode;
    // 门店代码
    private String storeCode;
    // 活动规则类型
    private String ruleType;
    // 有效天数
    private Integer effectiveDays;
    // 劵生效日期
    private Integer effectiveDate;
    // 劵失效日期
    private Integer invalidDate;
    // 单张最多可返次数
    private Integer maxReturn;
    // 促销活动截止日期
    private Integer promoEndTime;
    // 活动上状态(0下架，1上架   2结束)
    private Integer promoStatus;
    // 活动操作类型（1.POS主动失效2.job失效3.手动下架 4手动上架）
    private Integer promoOperateType;
    // 促销活动开始日期
    private Integer promoStartTime;
    //查询状态不等于
    private Integer unequalStatus;
    //查询类型不等于
    private Integer unequalOpType;
    //查询类型不等于1
    private Integer unequalOpType1;
    /**
     * 
     * 〈活动规则类型〉<br>
     * 〈功能详细描述〉
     * 
     * @author 12061748
     * @see [相关类/方法]（可选）
     * @since [产品/模块版本] （可选）
     */
    public interface rulesType {
        /**
         * 每
         */
        String EACH = "1";
        /**
         * 满
         */
        String FULL = "0";
    }

    /**
     * 
     * 〈上下架类型〉<br>
     * 〈功能详细描述〉
     * 
     * @author 13071470
     * @see [相关类/方法]（可选）
     * @since [产品/模块版本] （可选）
     */
    public interface promoStatusType {
        /**
         * 0代表下架
         */
        Integer OFFSALE = 0;
        /**
        * 1代表上架
        */
        Integer ONSALE = 1;
        /**
         * 2代表结束
         */
        Integer END = 2;
    }

    /**
     * 
     * 〈活动失效类型〉<br>
     * 〈功能详细描述〉
     * 
     * @author 13071470
     * @see [相关类/方法]（可选）
     * @since [产品/模块版本] （可选）
     */
    public interface OperateType {
        /**
         * 1.POS主动失效
         */
        Integer POS = 1;
        /**
         * 2.job失效
         */
        Integer JOB = 2;
        /**
         * 3.店长手动下架
         */
        Integer MANUAL_OFFSALE = 3;
        /**
         * 4.店长手动上架
         */
        Integer MANUAL_ONSALE = 4;
        /**
         * 5.后台手动下架
         */
        Integer ADMIN_OFFSALE = 5;
        /**
         * 6.店长手动上架
         */
        Integer ADMIN_ONSALE = 6;
    }
    @Id
    @Column(name = "PROMOTION_ID")
    public Long getPromotionId() {
        return promotionId;
    }
    public void setPromotionId(Long promotionId) {
        this.promotionId = promotionId;
    }
    @Column(name = "RULE_CODE")
    public String getRuleCode() {
        return ruleCode;
    }
    public void setRuleCode(String ruleCode) {
        this.ruleCode = ruleCode;
    }
    @Column(name = "STORE_CODE")
    public String getStoreCode() {
        return storeCode;
    }
    public void setStoreCode(String storeCode) {
        this.storeCode = storeCode;
    }
    @Column(name = "RULE_TYPE")
    public String getRuleType() {
        return ruleType;
    }
    public void setRuleType(String ruleType) {
        this.ruleType = ruleType;
    }
    @Column(name = "EFFECTIVE_DAYS")
    public Integer getEffectiveDays() {
        return effectiveDays;
    }
    public void setEffectiveDays(Integer effectiveDays) {
        this.effectiveDays = effectiveDays;
    }
    @Column(name = "EFFECTIVE_DATE")
    public Integer getEffectiveDate() {
        return effectiveDate;
    }
    public void setEffectiveDate(Integer effectiveDate) {
        this.effectiveDate = effectiveDate;
    }
    @Column(name = "MAX_RETURN")
    public Integer getMaxReturn() {
        return maxReturn;
    }
    public void setMaxReturn(Integer maxReturn) {
        this.maxReturn = maxReturn;
    }
    @Column(name = "PROMO_END_TIME")
    public Integer getPromoEndTime() {
        return promoEndTime;
    }
    public void setPromoEndTime(Integer promoEndTime) {
        this.promoEndTime = promoEndTime;
    }
    @Column(name = "PROMO_STATUS")
    public Integer getPromoStatus() {
        return promoStatus;
    }
    public void setPromoStatus(Integer promoStatus) {
        this.promoStatus = promoStatus;
    }
    @Column(name = "PROMO_OPERATE_TYPE")
    public Integer getPromoOperateType() {
        return promoOperateType;
    }
    public void setPromoOperateType(Integer promoOperateType) {
        this.promoOperateType = promoOperateType;
    }
    @Column(name = "PROMO_START_TIME")
    public Integer getPromoStartTime() {
        return promoStartTime;
    }
    public void setPromoStartTime(Integer promoStartTime) {
        this.promoStartTime = promoStartTime;
    }
    @Column(name = "INVALID_DATE")
    public Integer getInvalidDate() {
        return invalidDate;
    }
    public void setInvalidDate(Integer invalidDate) {
        this.invalidDate = invalidDate;
    }
    public Integer getUnequalStatus() {
        return unequalStatus;
    }
    public void setUnequalStatus(Integer unequalStatus) {
        this.unequalStatus = unequalStatus;
    }
    public Integer getUnequalOpType() {
        return unequalOpType;
    }
    public void setUnequalOpType(Integer unequalOpType) {
        this.unequalOpType = unequalOpType;
    }
    public Integer getUnequalOpType1() {
        return unequalOpType1;
    }
    public void setUnequalOpType1(Integer unequalOpType1) {
        this.unequalOpType1 = unequalOpType1;
    }
}
